#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);//主窗口
    void mousePressEvent(QMouseEvent *event);//点击鼠标
    void paintEvent(QPaintEvent *event);//画图
    ~MainWindow();

private:
    Ui::MainWindow *ui;
    int DDA = 1;
    int BRESENHAM = 2;
    int type;//当前划线算法类型
    QColor now_color;//当前画笔的颜色
    void add_line(QPoint point);//添加点
    void draw_DDA(QPoint start,QPoint end);//DDA算法画线
    void draw_BRESENHAM(QPoint start,QPoint end);//bresenha算法画线

    QList<QPoint>points;//储存起点终点

    struct LINE{
        QList<QPoint> point;
        QColor color;
    };//用于表示一条直线

    QList<LINE> lines;//用于储存所有的直线
};
#endif // MAINWINDOW_H
